import { request } from '../../request';

/**
 * 获取部门列表
 *
 * @param dept 部门数据
 * @returns
 */

export function fetchGetDeptList(params?: Api.System.DeptSearchParams) {
  return request<Api.System.DeptList>({
    url: '/dept/list',
    method: 'get',
    params
  });
}

/**
 * 获取部门树
 *
 * @param params
 * @returns
 */
export function fetchGetDeptTree(params?: Api.System.DeptSearchParams) {
  return request<Api.Common.TreeRecord[]>({
    url: '/dept/tree',
    method: 'get',
    params
  });
}

/**
 * 新增部门
 *
 * @param dept 部门数据
 * @returns
 */
export function fetchAddDept(dept: Api.System.DeptEditModel) {
  return request<null>({
    url: '/dept',
    method: 'post',
    data: dept
  });
}

/**
 * 更新部门
 *
 * @param dept 部门数据
 * @returns
 */
export function fetchUpdateDept(dept: Api.System.DeptEditModel) {
  return request<null>({
    url: '/dept',
    method: 'put',
    data: dept
  });
}

/**
 * 删除部门
 *
 * @param dept 部门数据
 * @returns
 */
export function fetchDeleteDept(id: number) {
  return request<null>({
    url: `/dept/${id}`,
    method: 'delete'
  });
}
